home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 4 / Info_Mac IV CD-ROM (Pacific HiTech Inc.)(August 1994).iso / Applications / Demos_Demo folder / Demos_Info folder / Demos™ Demonstration / More Examples / Subset of i < prev    next >
Text File  |  1994-02-14  |  3KB  |  110 lines

  1. { From user A Lumens, Project Subset_m at Mon, Feb 14, 1994 5:11 PM}
  2.  
  3.  
  4. { System Variables with non-default values: }
  5. Typechecking := 1
  6. Checking := 1
  7. Saveoptions := 2
  8. Savevalues := 0
  9.  
  10.  
  11. { Non-default Time SysVar value: }
  12. Time := [0,1,2]
  13.  
  14. Project Subset_m
  15. Title: Subset of array
  16. Description: This model demonstrates how to create an index that is a subset of another index.
  17. Author: Brian Arnold
  18. Date: Mon, Feb 14, 1994 11:16 AM
  19. Saveauthor: A Lumens
  20. Savedate: Mon, Feb 14, 1994 5:11 PM
  21. Defaultsize: 48,20
  22. Diagstate: 1,44,49,523,323,1
  23. Fileinfo: 0,-5,2,Project Subset_m,Subset of i
  24. Getresource Pagesetup,1
  25.  
  26. Index I1
  27. Title: i1
  28. Description: Example index (in this case, names of animals)
  29. Definition: ['Cat','Dog','Llama','Iguana','Ferret']
  30. Location: 64,72
  31. Nodesize: 48,20
  32.  
  33. Index I2
  34. Title: i2
  35. Description: Subset of example index explicitly using the names of specific animals
  36. Definition: ['Dog','Iguana']
  37. Location: 64,136
  38. Nodesize: 48,20
  39.  
  40. Chance A
  41. Title: A
  42. Description: An example variable defined as an array indexed by i1
  43. Definition: Table(I1)(
  44. 3M,5M,12M,14M,17M)
  45. Location: 288,40
  46. Nodesize: 48,20
  47. Defnstate: 1,344,192,407,173,0,MIDM
  48.  
  49. Chance B
  50. Title: b: i1<>i2
  51. Description: Boolean result for an index.  This variable should evaluate to an array of 1's and 0's indexed by the original index, where a 1 indicates an element we wish to extract in our subset index.~
  52. ~
  53. This variable is defined as the "not equals" part of another index that is explicitly defined as a subset of the original index.
  54. Definition: Not Sum(i1=i2, i2 )
  55. Location: 176,96
  56. Nodesize: 48,20
  57. Valuestate: 1,546,145,416,303,0,MIDM
  58. Reformval:           [        ,I1        ]
  59.  
  60. Chance B_accum_b
  61. Title: b*Accum b
  62. Description: The boolean array B multiplied against the accumulated result of B yielding the positions of the index that we want to extract.
  63. Definition: B*Cumulate(B)
  64. Location: 176,152
  65. Nodesize: 48,20
  66. Valuestate: 1,94,525,416,303,0,MIDM
  67.  
  68. Chance Sequence_b
  69. Title: Sequence b
  70. Description: Temporary index sequencing numbers from 1 to the expected size of the new index
  71. Definition: Sequence(1,Sum(B,I1))
  72. Location: 288,152
  73. Nodesize: 48,20
  74.  
  75. Chance Extract_i1
  76. Title: Extract i1
  77. Description: Extraction of index values for the new array
  78. Definition: Subindex( B_accum_b, Sequence_b, i1 )
  79. Location: 288,208
  80. Nodesize: 48,20
  81. Valuestate: 1,170,565,297,198,0,MIDM
  82.  
  83. Index Slice_i1
  84. Title: Slice i1
  85. Description: The extracted index, defined itself as an Index variable.
  86. Definition: Slice( Extract_i1, Sequence_b, Sequence( 1, Size( Sequence_b ) ) )
  87. Location: 288,264
  88. Nodesize: 48,20
  89. Valuestate: 1,566,364,315,181,0,MIDM
  90.  
  91. Chance A_b
  92. Title: A*B
  93. Description: This variable shows how you can multiply an array against a boolean test, "zeroing" out irrelevant values.  This keeps the variable indexed by the original index.
  94. Definition: A*B
  95. Location: 400,96
  96. Nodesize: 48,20
  97. Valuestate: 1,189,560,416,303,0,MIDM
  98. Reformval:           [I2        ,I1        ]
  99.  
  100. Chance Subset_a
  101. Title: Subset A
  102. Description: This "slices" out a subset of A for the elements of an indexed specified in Slice i1.
  103. Definition: A[i1=slice_i1]
  104. Location: 400,208
  105. Nodesize: 48,20
  106. Valuestate: 1,218,505,257,201,0,MIDM
  107.  
  108. Close Subset_m
  109.  
  110.